<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- <link type="text/css" rel="stylesheet" href="../"> -->
</head>

<body>

</body>
<script type="text/javascript">

    // 声明变量要用关键词 var  
    // 传统模式中,不通过关键词直接声明的变量 => 全局变量(没有变量提升)

    // var a = 10;
    // b = 20;
    // console.log(a,b);

    // 传统模式中 函数的形参可以重复声明 
    // function add(a, b, b) {
    //     // a = 1;
    //     // b = 2;
    //     // b = 3;
    //     console.log(a, b);
    //     return a + b;
    // }
    // var res = add(1, 2, 3)
    // console.log(res);

    // eval接收一个字符串, 将传入的字符串作为JS语句执行
    // eval("alert(11111)")
    // eval("console.log(1+1)"); 
        
    // 传统模式中 eval中直接声明的变量 也是作为全局变量
    // eval("var a = 1; var b = 2; var c = a + b; console.log(a,b,c)"); 
    // console.log(a,b,c);

    // this -> 函数内置的关键词(每个函数都有  this->函数调用时依存的对象)
    // 传统模式下  => 普通函数(命名函数,匿名函数 => 函数调用时没有依存的对象),默认this指向window
    // function fn(){
    //     console.log(this);  // this -> window
    // }
    // fn();


    // 关于删除对象的属性  delete 对象.xxx
    // var zhang = {
    //     name:"张三",
    //     age:18,
    //     height:"177cm",
    //     weight:"70kg",
    // }

    // console.log(delete zhang.name);
    // console.log(delete zhang.age);
    // console.log(delete zhang.height);
    // console.log(delete zhang.weight);

    // console.log(zhang);

    var x = 10;
    var y = 20;

    // 全局变量  => 存在window对象中
    console.log(delete window.x);
    console.log(delete window.y);

    console.log(window.x,window.y);

    




</script>

</html>